<form action="{:url()}" method="post" class="form_single">
    <div class="box">
      <div class="box-body">
        <div class="row">
          <div class="col-md-6">
            <div class="form-group">
              <label>昵称</label>
              <span>（用户昵称，主要用于显示）</span>
              <input class="form-control" name="nickname" placeholder="请输入昵称" value="{$info['nickname']|default=''}" type="text">
            </div>
          </div>
          <div class="col-md-6">
            <div class="form-group">
              <label>手机号</label>
              <span>（用户手机号，用于登录和找回密码）</span>
              <input class="form-control" name="mobile" placeholder="请输入手机号" value="{$info['mobile']|default=''}" type="text">
            </div>
          </div>
 
          <div class="col-md-6">
            <div class="form-group">
              <label>VIP时长</label>
              <span>（用户VIP时长分类）</span>
              <select class="form-control" name="vip_level" id="vip_level">
                <option value="0" {if condition="($info.vip_level ?? 0) == 0"} selected="selected" {/if}>普通用户</option>
                <option value="1" {if condition="($info.vip_level ?? 0) == 1"} selected="selected" {/if}>一个月VIP</option>
                <option value="3" {if condition="($info.vip_level ?? 0) == 3"} selected="selected" {/if}>三个月VIP</option>
                <option value="12" {if condition="($info.vip_level ?? 0) == 12"} selected="selected" {/if}>一年VIP</option>
              </select>
            </div>
          </div>

          <div class="col-md-6">
            <div class="form-group">
              <label>VIP开始时间</label>
              <span>（VIP生效开始时间）</span>
              <input class="form-control" name="vip_start_time" id="vip_start_time" placeholder="请选择开始时间" value="{$info.vip_start_time ?? ''}" type="datetime-local">
            </div>
          </div>

          <div class="col-md-6">
            <div class="form-group">
              <label>VIP过期时间</label>
              <span>（VIP到期时间）</span>
              <input class="form-control" name="vip_expire_time" id="vip_expire_time" placeholder="请选择过期时间" value="{$info.vip_expire_time ?? ''}" type="datetime-local">
            </div>
          </div>
 
          <div class="col-md-6">
            <div class="form-group">
              <label>积分</label>
              <span>（用户当前积分）</span>
              <input class="form-control" name="points" placeholder="请输入积分" value="{$info['points']|default=0}" type="number">
            </div>
          </div>

          <div class="col-md-6">
            <div class="form-group">
              <label>邀请码</label>
              <span>（用户专属邀请码）</span>
              <input class="form-control" name="invite_code" placeholder="请输入邀请码" value="{$info['invite_code']|default=''}" type="text">
            </div>
          </div>

          <div class="col-md-6">
            <div class="form-group">
              <label>状态</label>
              <span>（用户账号状态）</span>
              <select class="form-control" name="status">
                <option value="1" {if condition="($info.status ?? 1) == 1"} selected="selected" {/if}>正常</option>
                <option value="0" {if condition="($info.status ?? 1) == 0"} selected="selected" {/if}>禁用</option>
              </select>
            </div>
          </div>
            
          <div class="col-md-6">
            <div class="form-group">
                <label>头像图片</label>
                <br/>
                {assign name="avatar_id" value="$info.avatar|default='0'" /}
                {:widget('file/index', ['name' => 'avatar', 'value' => $avatar_id, 'type' => 'img'])}
            </div>
          </div>
            
        </div>
      </div>
      <div class="box-footer">
        
        <input type="hidden" name="id" value="{$info['id']|default='0'}"/>
          
        {include file="layout/edit_btn_group" /}
        
      </div>
    </div>
</form>

<script>
$(function() {
    // 设置下拉菜单默认值
    ob.setValue("vip_level", {$info.vip_level ?? 0});
    ob.setValue("status", {$info.status ?? 1});
    
    // VIP时长映射（天数）
    var vipDaysMap = {
        0: 0,    // 普通用户
        1: 30,   // 一个月VIP
        3: 90,   // 三个月VIP
        12: 365  // 一年VIP
    };
    
    // 格式化日期时间为 datetime-local 格式
    function formatDateTimeLocal(date) {
        var year = date.getFullYear();
        var month = String(date.getMonth() + 1).padStart(2, '0');
        var day = String(date.getDate()).padStart(2, '0');
        var hours = String(date.getHours()).padStart(2, '0');
        var minutes = String(date.getMinutes()).padStart(2, '0');
        return year + '-' + month + '-' + day + 'T' + hours + ':' + minutes;
    }
    
    // 计算VIP过期时间
    function calculateVipExpireTime() {
        var vipLevel = parseInt($('#vip_level').val());
        var startTimeStr = $('#vip_start_time').val();
        
        if (vipLevel > 0 && startTimeStr) {
            var startTime = new Date(startTimeStr);
            var days = vipDaysMap[vipLevel] || 0;
            
            if (days > 0) {
                var expireTime = new Date(startTime.getTime() + days * 24 * 60 * 60 * 1000);
                $('#vip_expire_time').val(formatDateTimeLocal(expireTime));
            }
        } else if (vipLevel == 0) {
            // 普通用户清空时间
            $('#vip_expire_time').val('');
        }
    }
    
    // 当VIP等级改变时自动设置开始时间为当前时间并计算过期时间
    $('#vip_level').change(function() {
        var vipLevel = parseInt($(this).val());
        
        if (vipLevel > 0) {
            // 如果开始时间为空，设置为当前时间
            if (!$('#vip_start_time').val()) {
                var now = new Date();
                $('#vip_start_time').val(formatDateTimeLocal(now));
            }
            calculateVipExpireTime();
        } else {
            // 普通用户清空时间字段
            $('#vip_start_time').val('');
            $('#vip_expire_time').val('');
        }
    });
    
    // 当开始时间改变时重新计算过期时间
    $('#vip_start_time').change(function() {
        calculateVipExpireTime();
    });
    
    // 页面加载时如果有VIP等级但没有开始时间，自动设置
    var currentVipLevel = parseInt($('#vip_level').val());
    if (currentVipLevel > 0 && !$('#vip_start_time').val()) {
        var now = new Date();
        $('#vip_start_time').val(formatDateTimeLocal(now));
        calculateVipExpireTime();
    }
});
</script>